package cn.hznc.domain.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.gitee.sunchenbin.mybatis.actable.annotation.Column;
import com.gitee.sunchenbin.mybatis.actable.annotation.Table;
import com.gitee.sunchenbin.mybatis.actable.constants.MySqlTypeConstant;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

/**
 * 刀具总成实体类
 */
@Table(name = "t_assembly_tool")
@TableName(value = "t_assembly_tool")
@Getter
@Setter
public class AssemblyToolEntity {

    /**
     * 系统编码
     */
    @Column(name = "id",type = MySqlTypeConstant.INT,length = 11,isKey = true,isAutoIncrement = true)
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 刀具标识(idnr)
     */
    @Column(name = "tool_id", type = MySqlTypeConstant.INT, length = 11)
    @TableField("tool_id")
    private Integer toolId;

    /**
     * 刀片标识(idnr)
     */
    @Column(name = "cutter_id", type = MySqlTypeConstant.INT, length = 11)
    @TableField("cutter_id")
    private Integer cutterId;

    /**
     * 工具标识(idnr)
     */
    @Column(name = "auxiliary_tool_id", type = MySqlTypeConstant.INT, length = 11)
    @TableField("auxiliary_tool_id")
    private Integer auxiliaryToolId;

    /**
     * 刀具号
     */
    @Column(name = "tool_no", type = MySqlTypeConstant.LONGTEXT)
    @TableField("tool_no")
    private String toolNo;

    /**
     * 总成参数
     */
    @Column(name = "parameters", type = MySqlTypeConstant.LONGTEXT)
    @TableField("parameters")
    private String parameters;

    /**
     * 总成刀具编码
     */
    @Column(name = "code", type = MySqlTypeConstant.VARCHAR, length = 200)
    @TableField("code")
    private String code;

    /**
     * 总成刀具编码
     */
    @Column(name = "name", type = MySqlTypeConstant.VARCHAR, length = 200)
    @TableField("name")
    private String name;

    /**
     * 总成刀具编码
     */
    @Column(name = "type", type = MySqlTypeConstant.VARCHAR, length = 200)
    @TableField("type")
    private String type;

    /**
     * 图片
     */
    @Column(name = "image", type = MySqlTypeConstant.VARCHAR, length = 200)
    @TableField("image")
    private String image;

    /**
     * 三维模型图
     */
    @Column(name = "three_dimensional_model", type = MySqlTypeConstant.LONGTEXT)
    @TableField("three_dimensional_model")
    private String threeDimensionalModel;

    /**
     * 三维模型图
     */
    @Column(name = "three_dimensional_model_stl", type = MySqlTypeConstant.TEXT)
    @TableField("three_dimensional_model_stl")
    private String threeDimensionalModelStl;

    /**
     * 创建时间
     */
    @Column(name = "create_time", type = MySqlTypeConstant.DATETIME, length = 0)
    @TableField("create_time")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 修改时间
     */
    @Column(name = "modify_time", type = MySqlTypeConstant.DATETIME, length = 0)
    @TableField("modify_time")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date modifyTime;

}
